+--------+-------------------------+-------------------------+--------+--------+ |00000000| 00 18 43 50 5f 4d 6f 75 | 73 65 53 6b 65 74 63 68 |..CP_Mou|seSketch| |00000010| 65 72 50 61 6e 65 2e 63 | 70 70 00 00 00 00 00 00 |erPane.c|pp......| |00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00000040| 00 54 45 58 54 43 57 49 | 45 00 00 00 00 00 00 00 |.TEXTCWI|E.......| |00000050| 00 00 00 00 00 11 bd 00 | 00 01 1e b8 b5 c9 6c b8 |........|......l.| |00000060| b5 c9 6c 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..l.....|........| |00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 c5 8d 00 00 |........|........| |00000080| 23 69 6e 63 6c 75 64 65 | 20 22 50 72 65 68 64 72 |#include| "Prehdr| |00000090| 2e 68 22 0d 0a 2f 2a 0d | 0a 3d 3d 3d 3d 3d 3d 3d |.h"../*.|.=======| |000000a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000000e0| 3d 3d 0d 0a 0d 0a 09 46 | 49 4c 45 3a 09 09 43 50 |==.....F|ILE:..CP| |000000f0| 5f 4d 6f 75 73 65 53 6b | 65 74 63 68 65 72 50 61 |_MouseSk|etcherPa| |00000100| 6e 65 2e 68 0d 0a 09 0d | 0a 09 09 09 09 43 6f 70 |ne.h....|.....Cop| |00000110| 79 72 69 67 68 74 20 a9 | 20 32 30 30 31 2e 20 4b |yright .| 2001. K| |00000120| 65 6e 20 53 74 61 68 6c | 6d 61 6e 2e 20 41 6c 6c |en Stahl|man. All| |00000130| 20 52 69 67 68 74 73 20 | 52 65 73 65 72 76 65 64 | Rights |Reserved| |00000140| 2e 0d 0a 09 0d 0a 09 50 | 55 52 50 4f 53 45 3a 09 |.......P|URPOSE:.| |00000150| 43 50 5f 50 6c 75 67 49 | 6e 20 63 6c 61 73 73 20 |CP_PlugI|n class | |00000160| 74 6f 20 62 65 65 70 2e | 0d 0a 09 0d 0a 09 48 49 |to beep.|......HI| |00000170| 53 54 4f 52 59 3a 09 31 | 73 74 20 56 65 72 73 69 |STORY:.1|st Versi| |00000180| 6f 6e 20 2d 20 53 65 70 | 74 65 6d 62 65 72 20 32 |on - Sep|tember 2| |00000190| 30 30 31 2e 0d 0a 09 0d | 0a 09 4e 4f 54 45 53 3a |001.....|..NOTES:| |000001a0| 09 09 2d 20 6e 6f 6e 65 | 20 2d 0d 0a 0d 0a 3d 3d |..- none| -....==| |000001b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000001c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000001d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000001e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000001f0| 3d 3d 3d 3d 3d 3d 3d 0d | 0a 2a 2f 0d 0a 0d 0a 09 |=======.|.*/.....| |00000200| 2f 2f 20 43 50 5f 44 65 | 6d 6f 0d 0a 23 69 6e 63 |// CP_De|mo..#inc| |00000210| 6c 75 64 65 20 22 43 50 | 5f 4d 6f 75 73 65 53 6b |lude "CP|_MouseSk| |00000220| 65 74 63 68 65 72 50 61 | 6e 65 2e 68 22 0d 0a 0d |etcherPa|ne.h"...| |00000230| 0a 09 2f 2f 20 43 50 4c | 41 54 5f 46 72 61 6d 65 |..// CPL|AT_Frame| |00000240| 77 6f 72 6b 0d 0a 23 69 | 6e 63 6c 75 64 65 20 22 |work..#i|nclude "| |00000250| 43 50 5f 44 65 73 6b 74 | 6f 70 2e 68 22 0d 0a 23 |CP_Deskt|op.h"..#| |00000260| 69 6e 63 6c 75 64 65 20 | 22 43 50 5f 49 6d 61 67 |include |"CP_Imag| |00000270| 65 61 62 6c 65 53 68 61 | 70 65 5f 4c 69 6e 65 2e |eableSha|pe_Line.| |00000280| 68 22 0d 0a 23 69 6e 63 | 6c 75 64 65 20 22 43 50 |h"..#inc|lude "CP| |00000290| 5f 49 6d 61 67 65 61 62 | 6c 65 53 68 61 70 65 5f |_Imageab|leShape_| |000002a0| 52 65 63 74 2e 68 22 0d | 0a 23 69 6e 63 6c 75 64 |Rect.h".|.#includ| |000002b0| 65 20 22 43 50 5f 4d 6f | 75 73 65 54 72 61 63 6b |e "CP_Mo|useTrack| |000002c0| 65 72 2e 68 22 0d 0a 23 | 69 6e 63 6c 75 64 65 20 |er.h"..#|include | |000002d0| 22 43 50 5f 57 69 6e 64 | 6f 77 2e 68 22 0d 0a 23 |"CP_Wind|ow.h"..#| |000002e0| 69 6e 63 6c 75 64 65 20 | 22 43 50 5f 54 79 70 65 |include |"CP_Type| |000002f0| 73 2e 68 22 0d 0a 0d 0a | 23 69 66 64 65 66 20 5f |s.h"....|#ifdef _| |00000300| 5f 4d 57 45 52 4b 53 5f | 5f 0d 0a 23 70 72 61 67 |_MWERKS_|_..#prag| |00000310| 6d 61 20 6d 61 72 6b 20 | 3d 3d 3d 20 43 6f 6e 73 |ma mark |=== Cons| |00000320| 74 72 75 63 74 69 6f 6e | 20 2f 20 44 65 73 74 72 |truction| / Destr| |00000330| 75 63 74 69 6f 6e 20 3d | 3d 3d 0d 0a 23 65 6e 64 |uction =|==..#end| |00000340| 69 66 0d 0a 0d 0a 2f 2a | 0d 0a 3d 3d 3d 3d 3d 3d |if..../*|..======| |00000350| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000360| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000370| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000380| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000390| 3d 3d 3d 0d 0a 09 46 55 | 4e 43 54 49 4f 4e 3a 09 |===...FU|NCTION:.| |000003a0| 43 50 5f 4d 6f 75 73 65 | 53 6b 65 74 63 68 65 72 |CP_Mouse|Sketcher| |000003b0| 50 61 6e 65 0d 0a 09 0d | 0a 09 50 55 52 50 4f 53 |Pane....|..PURPOS| |000003c0| 45 3a 09 45 6d 70 74 79 | 20 63 6f 6e 73 74 72 75 |E:.Empty| constru| |000003d0| 63 74 6f 72 2e 0d 0a 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ctor...=|========| |000003e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000003f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000400| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000410| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000420| 0d 0a 2a 2f 0d 0a 43 50 | 5f 4d 6f 75 73 65 53 6b |..*/..CP|_MouseSk| |00000430| 65 74 63 68 65 72 50 61 | 6e 65 3a 3a 43 50 5f 4d |etcherPa|ne::CP_M| |00000440| 6f 75 73 65 53 6b 65 74 | 63 68 65 72 50 61 6e 65 |ouseSket|cherPane| |00000450| 28 20 43 50 5f 56 69 65 | 77 20 2a 69 6e 53 75 70 |( CP_Vie|w *inSup| |00000460| 65 72 76 69 65 77 2c 0d | 0a 09 63 6f 6e 73 74 20 |erview,.|..const | |00000470| 43 50 5f 53 5f 50 61 6e | 65 49 6e 66 6f 26 20 69 |CP_S_Pan|eInfo& i| |00000480| 6e 50 61 6e 65 49 6e 66 | 6f 20 29 0d 0a 09 3a 20 |nPaneInf|o )...: | |00000490| 43 50 5f 50 61 6e 65 28 | 20 69 6e 53 75 70 65 72 |CP_Pane(| inSuper| |000004a0| 76 69 65 77 2c 20 69 6e | 50 61 6e 65 49 6e 66 6f |view, in|PaneInfo| |000004b0| 20 29 0d 0a 7b 0d 0a 23 | 69 66 64 65 66 20 5f 5f | )..{..#|ifdef __| |000004c0| 42 55 49 4c 44 5f 57 49 | 4e 5f 5f 0d 0a 09 43 72 |BUILD_WI|N__...Cr| |000004d0| 65 61 74 65 50 61 6e 65 | 43 68 69 6c 64 57 69 6e |eatePane|ChildWin| |000004e0| 64 6f 77 28 20 69 6e 53 | 75 70 65 72 76 69 65 77 |dow( inS|uperview| |000004f0| 2c 20 69 6e 50 61 6e 65 | 49 6e 66 6f 2e 66 4c 6f |, inPane|Info.fLo| |00000500| 63 61 74 69 6f 6e 2c 20 | 69 6e 50 61 6e 65 49 6e |cation, |inPaneIn| |00000510| 66 6f 2e 66 53 69 7a 65 | 20 29 3b 0d 0a 23 65 6e |fo.fSize| );..#en| |00000520| 64 69 66 0d 0a 7d 0d 0a | 0d 0a 2f 2a 0d 0a 3d 3d |dif..}..|../*..==| |00000530| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000540| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000550| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000560| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000570| 3d 3d 3d 3d 3d 3d 3d 0d | 0a 09 46 55 4e 43 54 49 |=======.|..FUNCTI| |00000580| 4f 4e 3a 09 43 50 5f 4d | 6f 75 73 65 53 6b 65 74 |ON:.CP_M|ouseSket| |00000590| 63 68 65 72 50 61 6e 65 | 0d 0a 09 0d 0a 09 50 55 |cherPane|......PU| |000005a0| 52 50 4f 53 45 3a 09 44 | 65 73 74 72 75 63 74 6f |RPOSE:.D|estructo| |000005b0| 72 0d 0a 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |r..=====|========| |000005c0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000005d0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000005e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000005f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 0d 0a 2a 2f |========|====..*/| |00000600| 0d 0a 43 50 5f 4d 6f 75 | 73 65 53 6b 65 74 63 68 |..CP_Mou|seSketch| |00000610| 65 72 50 61 6e 65 3a 3a | 7e 43 50 5f 4d 6f 75 73 |erPane::|~CP_Mous| |00000620| 65 53 6b 65 74 63 68 65 | 72 50 61 6e 65 28 29 0d |eSketche|rPane().| |00000630| 0a 7b 0d 0a 7d 0d 0a 0d | 0a 23 69 66 64 65 66 20 |.{..}...|.#ifdef | |00000640| 5f 5f 4d 57 45 52 4b 53 | 5f 5f 0d 0a 23 70 72 61 |__MWERKS|__..#pra| |00000650| 67 6d 61 20 6d 61 72 6b | 20 3d 3d 3d 20 44 72 61 |gma mark| === Dra| |00000660| 77 69 6e 67 20 3d 3d 3d | 0d 0a 23 65 6e 64 69 66 |wing ===|..#endif| |00000670| 0d 0a 0d 0a 2f 2a 0d 0a | 3d 3d 3d 3d 3d 3d 3d 3d |..../*..|========| |00000680| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000690| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000006a0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000006b0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000006c0| 3d 0d 0a 09 46 55 4e 43 | 54 49 4f 4e 3a 09 44 72 |=...FUNC|TION:.Dr| |000006d0| 61 77 53 65 6c 66 0d 0a | 09 0d 0a 09 50 55 52 50 |awSelf..|....PURP| |000006e0| 4f 53 45 3a 09 44 72 61 | 77 20 74 68 65 20 63 6f |OSE:.Dra|w the co| |000006f0| 6e 74 65 6e 74 73 20 6f | 66 20 6f 75 72 20 70 61 |ntents o|f our pa| |00000700| 6e 65 2e 0d 0a 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |ne...===|========| |00000710| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000720| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000730| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000740| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 0d 0a |========|======..| |00000750| 2a 2f 0d 0a 76 6f 69 64 | 20 43 50 5f 4d 6f 75 73 |*/..void| CP_Mous| |00000760| 65 53 6b 65 74 63 68 65 | 72 50 61 6e 65 3a 3a 4f |eSketche|rPane::O| |00000770| 6e 44 72 61 77 53 65 6c | 66 28 20 43 50 5f 52 65 |nDrawSel|f( CP_Re| |00000780| 67 69 6f 6e 26 20 2f 2a | 69 6e 55 70 64 61 74 65 |gion& /*|inUpdate| |00000790| 52 67 6e 2a 2f 20 29 0d | 0a 7b 0d 0a 09 2f 2f 43 |Rgn*/ ).|.{...//C| |000007a0| 50 5f 52 65 63 74 09 09 | 09 09 62 6f 75 6e 64 73 |P_Rect..|..bounds| |000007b0| 20 3d 20 47 65 74 4c 6f | 63 61 6c 42 6f 75 6e 64 | = GetLo|calBound| |000007c0| 73 28 29 3b 0d 0a 0d 0a | 09 2f 2f 43 50 5f 49 6d |s();....|.//CP_Im| |000007d0| 67 53 68 61 70 65 5f 52 | 65 63 74 09 66 72 61 6d |gShape_R|ect.fram| |000007e0| 65 28 20 66 43 61 6e 76 | 61 73 2c 20 62 6f 75 6e |e( fCanv|as, boun| |000007f0| 64 73 20 29 3b 0d 0a 09 | 2f 2f 66 72 61 6d 65 2e |ds );...|//frame.| |00000800| 46 72 61 6d 65 28 29 3b | 0d 0a 7d 0d 0a 0d 0a 23 |Frame();|..}....#| |00000810| 69 66 20 5f 5f 4d 57 45 | 52 4b 53 5f 5f 0d 0a 23 |if __MWE|RKS__..#| |00000820| 70 72 61 67 6d 61 20 6d | 61 72 6b 20 3d 3d 3d 20 |pragma m|ark === | |00000830| 45 76 65 6e 74 73 20 3d | 3d 3d 0d 0a 23 65 6e 64 |Events =|==..#end| |00000840| 69 66 0d 0a 0d 0a 2f 2a | 0d 0a 3d 3d 3d 3d 3d 3d |if..../*|..======| |00000850| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000860| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000870| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000880| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000890| 3d 3d 3d 0d 0a 09 46 55 | 4e 43 54 49 4f 4e 3a 09 |===...FU|NCTION:.| |000008a0| 48 61 6e 64 6c 65 4d 6f | 75 73 65 44 6f 77 6e 0d |HandleMo|useDown.| |000008b0| 0a 09 0d 0a 09 50 55 52 | 50 4f 53 45 3a 09 48 61 |.....PUR|POSE:.Ha| |000008c0| 6e 64 6c 65 20 61 20 6d | 6f 75 73 65 20 64 6f 77 |ndle a m|ouse dow| |000008d0| 6e 20 69 6e 20 6f 75 72 | 20 76 69 65 77 2e 0d 0a |n in our| view...| |000008e0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |000008f0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000900| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000910| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000920| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 0d 0a 2a 2f 0d 0a 76 |========|=..*/..v| |00000930| 6f 69 64 20 43 50 5f 4d | 6f 75 73 65 53 6b 65 74 |oid CP_M|ouseSket| |00000940| 63 68 65 72 50 61 6e 65 | 3a 3a 48 61 6e 64 6c 65 |cherPane|::Handle| |00000950| 4d 6f 75 73 65 44 6f 77 | 6e 28 20 43 50 5f 45 76 |MouseDow|n( CP_Ev| |00000960| 65 6e 74 26 20 2f 2a 69 | 6e 45 76 65 6e 74 2a 2f |ent& /*i|nEvent*/| |00000970| 2c 20 43 50 5f 50 6f 69 | 6e 74 26 20 69 6e 57 68 |, CP_Poi|nt& inWh| |00000980| 65 72 65 20 29 0d 0a 7b | 0d 0a 09 74 72 79 0d 0a |ere )..{|...try..| |00000990| 09 7b 0d 0a 09 09 09 2f | 2f 20 6d 61 6b 65 20 73 |.{...../|/ make s| |000009a0| 75 72 65 20 77 65 20 68 | 61 76 65 20 61 20 76 61 |ure we h|ave a va| |000009b0| 6c 69 64 20 63 61 6e 76 | 61 73 20 6f 62 6a 65 63 |lid canv|as objec| |000009c0| 74 20 75 6e 64 65 72 0d | 0a 09 09 09 2f 2f 20 57 |t under.|....// W| |000009d0| 69 6e 64 6f 77 73 2c 20 | 69 73 20 68 61 72 6d 6c |indows, |is harml| |000009e0| 65 73 73 20 6f 6e 20 74 | 68 65 20 4d 61 63 4f 53 |ess on t|he MacOS| |000009f0| 20 73 69 64 65 0d 0a 09 | 09 7b 0d 0a 09 09 09 43 | side...|.{.....C| |00000a00| 50 5f 53 54 5f 44 43 43 | 61 6e 76 61 73 09 09 74 |P_ST_DCC|anvas..t| |00000a10| 65 6d 70 43 61 6e 76 61 | 73 28 20 74 68 69 73 20 |empCanva|s( this | |00000a20| 29 3b 0d 0a 09 09 09 0d | 0a 09 09 09 50 72 65 70 |);......|....Prep| |00000a30| 61 72 65 44 72 61 77 28 | 29 3b 0d 0a 09 09 09 0d |areDraw(|);......| |00000a40| 0a 09 09 09 09 2f 2f 20 | 65 72 61 73 65 20 61 6e |.....// |erase an| |00000a50| 79 20 70 72 65 76 69 6f | 75 73 20 73 68 61 70 65 |y previo|us shape| |00000a60| 20 62 65 66 6f 72 65 20 | 64 72 61 77 69 6e 67 20 | before |drawing | |00000a70| 6e 65 77 20 6f 6e 65 0d | 0a 09 09 09 43 50 5f 52 |new one.|....CP_R| |00000a80| 65 63 74 09 09 09 09 62 | 6f 75 6e 64 73 20 3d 20 |ect....b|ounds = | |00000a90| 47 65 74 4c 6f 63 61 6c | 42 6f 75 6e 64 73 28 29 |GetLocal|Bounds()| |00000aa0| 3b 0d 0a 09 09 09 0d 0a | 09 09 09 09 2f 2f 20 69 |;.......|....// i| |00000ab0| 6e 73 65 72 74 20 31 20 | 70 69 78 65 6c 20 73 6f |nsert 1 |pixel so| |00000ac0| 20 77 65 20 64 6f 6e 27 | 74 20 65 72 61 73 65 20 | we don'|t erase | |00000ad0| 6f 75 72 20 66 72 61 6d | 65 0d 0a 09 09 09 62 6f |our fram|e.....bo| |00000ae0| 75 6e 64 73 2e 49 6e 73 | 65 74 28 20 31 2c 20 31 |unds.Ins|et( 1, 1| |00000af0| 20 29 3b 0d 0a 09 09 09 | 09 0d 0a 09 09 09 43 50 | );.....|......CP| |00000b00| 5f 49 6d 67 53 68 61 70 | 65 5f 52 65 63 74 09 65 |_ImgShap|e_Rect.e| |00000b10| 72 61 73 65 52 65 63 74 | 28 20 66 43 61 6e 76 61 |raseRect|( fCanva| |00000b20| 73 2c 20 62 6f 75 6e 64 | 73 20 29 3b 0d 0a 09 09 |s, bound|s );....| |00000b30| 09 65 72 61 73 65 52 65 | 63 74 2e 45 72 61 73 65 |.eraseRe|ct.Erase| |00000b40| 28 29 3b 0d 0a 09 09 7d | 0d 0a 09 09 0d 0a 09 09 |();....}|........| |00000b50| 43 50 5f 50 6f 69 6e 74 | 09 09 09 6d 6f 75 73 65 |CP_Point|...mouse| |00000b60| 4c 6f 63 61 74 69 6f 6e | 20 3d 20 69 6e 57 68 65 |Location| = inWhe| |00000b70| 72 65 3b 0d 0a 09 09 50 | 6f 72 74 54 6f 4c 6f 63 |re;....P|ortToLoc| |00000b80| 61 6c 28 20 6d 6f 75 73 | 65 4c 6f 63 61 74 69 6f |al( mous|eLocatio| |00000b90| 6e 20 29 3b 0d 0a 09 09 | 0d 0a 09 09 66 4c 61 73 |n );....|....fLas| |00000ba0| 74 53 74 61 72 74 50 6f | 69 6e 74 20 3d 20 6d 6f |tStartPo|int = mo| |00000bb0| 75 73 65 4c 6f 63 61 74 | 69 6f 6e 3b 0d 0a 09 09 |useLocat|ion;....| |00000bc0| 0d 0a 09 09 09 2f 2f 20 | 74 72 61 63 6b 20 6d 6f |.....// |track mo| |00000bd0| 75 73 65 20 2d 20 64 72 | 61 77 69 6e 67 20 6e 65 |use - dr|awing ne| |00000be0| 77 20 73 68 61 70 65 0d | 0a 09 09 43 50 5f 4d 6f |w shape.|...CP_Mo| |00000bf0| 75 73 65 54 72 61 63 6b | 65 72 09 09 6d 6f 75 73 |useTrack|er..mous| |00000c00| 65 54 72 61 63 6b 65 72 | 28 20 74 68 69 73 2c 20 |eTracker|( this, | |00000c10| 4d 6f 75 73 65 53 6b 65 | 74 63 68 65 72 5f 54 72 |MouseSke|tcher_Tr| |00000c20| 61 63 6b 4d 6f 75 73 65 | 5f 63 61 6c 6c 62 61 63 |ackMouse|_callbac| |00000c30| 6b 2c 20 4e 55 4c 4c 20 | 29 3b 0d 0a 09 09 6d 6f |k, NULL |);....mo| |00000c40| 75 73 65 54 72 61 63 6b | 65 72 2e 54 72 61 63 6b |useTrack|er.Track| |00000c50| 4d 6f 75 73 65 28 20 6d | 6f 75 73 65 4c 6f 63 61 |Mouse( m|ouseLoca| |00000c60| 74 69 6f 6e 20 29 3b 0d | 0a 09 7d 0d 0a 09 63 61 |tion );.|..}...ca| |00000c70| 74 63 68 28 2e 2e 2e 29 | 0d 0a 09 7b 0d 0a 09 7d |tch(...)|...{...}| |00000c80| 0d 0a 7d 0d 0a 0d 0a 23 | 69 66 64 65 66 20 5f 5f |..}....#|ifdef __| |00000c90| 4d 57 45 52 4b 53 5f 5f | 0d 0a 23 70 72 61 67 6d |MWERKS__|..#pragm| |00000ca0| 61 20 6d 61 72 6b 20 3d | 3d 3d 20 4d 6f 75 73 65 |a mark =|== Mouse| |00000cb0| 20 54 72 61 63 6b 69 6e | 67 20 3d 3d 3d 0d 0a 23 | Trackin|g ===..#| |00000cc0| 65 6e 64 69 66 0d 0a 0d | 0a 2f 2a 0d 0a 3d 3d 3d |endif...|./*..===| |00000cd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000ce0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000cf0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d00| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000d10| 3d 3d 3d 3d 3d 3d 0d 0a | 09 46 55 4e 43 54 49 4f |======..|.FUNCTIO| |00000d20| 4e 3a 09 4f 6e 4d 6f 75 | 73 65 54 72 61 63 6b 69 |N:.OnMou|seTracki| |00000d30| 6e 67 0d 0a 09 0d 0a 09 | 50 55 52 50 4f 53 45 3a |ng......|PURPOSE:| |00000d40| 09 54 68 69 73 20 69 73 | 20 63 61 6c 6c 65 64 20 |.This is| called | |00000d50| 77 68 65 6e 20 77 65 20 | 61 72 65 20 74 72 61 63 |when we |are trac| |00000d60| 6b 69 6e 67 20 74 68 65 | 20 6d 6f 75 73 65 20 64 |king the| mouse d| |00000d70| 75 72 69 6e 67 20 61 20 | 72 65 73 69 7a 65 2e 0d |uring a |resize..| |00000d80| 0a 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |.=======|========| |00000d90| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000da0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000db0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000dc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 0d 0a 2a 2f 0d 0a |========|==..*/..| |00000dd0| 76 6f 69 64 20 43 50 5f | 4d 6f 75 73 65 53 6b 65 |void CP_|MouseSke| |00000de0| 74 63 68 65 72 50 61 6e | 65 3a 3a 4f 6e 4d 6f 75 |tcherPan|e::OnMou| |00000df0| 73 65 54 72 61 63 6b 69 | 6e 67 28 20 43 50 5f 50 |seTracki|ng( CP_P| |00000e00| 6f 69 6e 74 26 20 69 6e | 4d 6f 75 73 65 4c 6f 63 |oint& in|MouseLoc| |00000e10| 61 74 69 6f 6e 2c 20 76 | 6f 69 64 20 2a 2f 2a 69 |ation, v|oid */*i| |00000e20| 6e 44 61 74 61 2a 2f 20 | 29 0d 0a 7b 0d 0a 09 50 |nData*/ |)..{...P| |00000e30| 72 65 70 61 72 65 44 72 | 61 77 28 29 3b 0d 0a 09 |repareDr|aw();...| |00000e40| 0d 0a 09 43 50 5f 49 6d | 67 53 68 61 70 65 5f 4c |...CP_Im|gShape_L| |00000e50| 69 6e 65 09 09 6c 69 6e | 65 28 20 66 43 61 6e 76 |ine..lin|e( fCanv| |00000e60| 61 73 20 29 3b 0d 0a 09 | 6c 69 6e 65 2e 4c 69 6e |as );...|line.Lin| |00000e70| 65 28 20 66 4c 61 73 74 | 53 74 61 72 74 50 6f 69 |e( fLast|StartPoi| |00000e80| 6e 74 2c 20 69 6e 4d 6f | 75 73 65 4c 6f 63 61 74 |nt, inMo|useLocat| |00000e90| 69 6f 6e 20 29 3b 0d 0a | 09 0d 0a 09 66 4c 61 73 |ion );..|....fLas| |00000ea0| 74 53 74 61 72 74 50 6f | 69 6e 74 20 3d 20 69 6e |tStartPo|int = in| |00000eb0| 4d 6f 75 73 65 4c 6f 63 | 61 74 69 6f 6e 3b 0d 0a |MouseLoc|ation;..| |00000ec0| 7d 0d 0a 0d 0a 23 69 66 | 64 65 66 20 5f 5f 4d 57 |}....#if|def __MW| |00000ed0| 45 52 4b 53 5f 5f 0d 0a | 23 70 72 61 67 6d 61 20 |ERKS__..|#pragma | |00000ee0| 6d 61 72 6b 20 3d 3d 3d | 20 43 61 6c 6c 62 61 63 |mark ===| Callbac| |00000ef0| 6b 73 20 3d 3d 3d 0d 0a | 23 65 6e 64 69 66 0d 0a |ks ===..|#endif..| |00000f00| 0d 0a 2f 2a 0d 0a 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |../*..==|========| |00000f10| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000f20| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000f30| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000f40| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 0d |========|=======.| |00000f50| 0a 09 46 55 4e 43 54 49 | 4f 4e 3a 09 4d 6f 75 73 |..FUNCTI|ON:.Mous| |00000f60| 65 53 6b 65 74 63 68 65 | 72 5f 54 72 61 63 6b 4d |eSketche|r_TrackM| |00000f70| 6f 75 73 65 5f 63 61 6c | 6c 62 61 63 6b 0d 0a 09 |ouse_cal|lback...| |00000f80| 0d 0a 09 50 55 52 50 4f | 53 45 3a 09 4f 75 72 20 |...PURPO|SE:.Our | |00000f90| 6d 6f 75 73 65 20 74 72 | 61 63 6b 69 6e 67 20 63 |mouse tr|acking c| |00000fa0| 61 6c 6c 62 61 63 6b 2e | 0d 0a 3d 3d 3d 3d 3d 3d |allback.|..======| |00000fb0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fc0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fd0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000fe0| 3d 3d 3d 3d 3d 3d 3d 3d | 3d 3d 3d 3d 3d 3d 3d 3d |========|========| |00000ff0| 3d 3d 3d 0d 0a 2a 2f 0d | 0a 76 6f 69 64 20 4d 6f |===..*/.|.void Mo| |00001000| 75 73 65 53 6b 65 74 63 | 68 65 72 5f 54 72 61 63 |useSketc|her_Trac| |00001010| 6b 4d 6f 75 73 65 5f 63 | 61 6c 6c 62 61 63 6b 28 |kMouse_c|allback(| |00001020| 20 43 50 5f 50 61 6e 65 | 20 2a 69 6e 44 65 73 74 | CP_Pane| *inDest| |00001030| 50 61 6e 65 2c 20 43 50 | 5f 50 6f 69 6e 74 26 20 |Pane, CP|_Point& | |00001040| 69 6e 4d 6f 75 73 65 4c | 6f 63 61 74 69 6f 6e 2c |inMouseL|ocation,| |00001050| 0d 0a 09 76 6f 69 64 20 | 2a 69 6e 44 61 74 61 20 |...void |*inData | |00001060| 29 0d 0a 7b 0d 0a 09 69 | 66 28 20 69 6e 44 65 73 |)..{...i|f( inDes| |00001070| 74 50 61 6e 65 20 21 3d | 20 4e 55 4c 4c 20 29 0d |tPane !=| NULL ).| |00001080| 0a 09 7b 0d 0a 09 09 43 | 50 5f 4d 6f 75 73 65 53 |..{....C|P_MouseS| |00001090| 6b 65 74 63 68 65 72 50 | 61 6e 65 09 09 2a 6d 6f |ketcherP|ane..*mo| |000010a0| 75 73 65 54 72 61 63 6b | 50 61 6e 65 20 3d 20 64 |useTrack|Pane = d| |000010b0| 79 6e 61 6d 69 63 5f 63 | 61 73 74 3c 43 50 5f 4d |ynamic_c|ast<CP_M| |000010c0| 6f 75 73 65 53 6b 65 74 | 63 68 65 72 50 61 6e 65 |ouseSket|cherPane| |000010d0| 20 2a 3e 28 69 6e 44 65 | 73 74 50 61 6e 65 29 3b | *>(inDe|stPane);| |000010e0| 0d 0a 09 09 0d 0a 09 09 | 69 66 28 20 6d 6f 75 73 |........|if( mous| |000010f0| 65 54 72 61 63 6b 50 61 | 6e 65 20 21 3d 20 4e 55 |eTrackPa|ne != NU| |00001100| 4c 4c 20 29 0d 0a 09 09 | 09 6d 6f 75 73 65 54 72 |LL )....|.mouseTr| |00001110| 61 63 6b 50 61 6e 65 2d | 3e 4f 6e 4d 6f 75 73 65 |ackPane-|>OnMouse| |00001120| 54 72 61 63 6b 69 6e 67 | 28 20 69 6e 4d 6f 75 73 |Tracking|( inMous| |00001130| 65 4c 6f 63 61 74 69 6f | 6e 2c 20 69 6e 44 61 74 |eLocatio|n, inDat| |00001140| 61 20 29 3b 0d 0a 09 7d | 0d 0a 7d 0d 0a 0d 0a 23 |a );...}|..}....#| |00001150| 69 66 64 65 66 20 5f 5f | 42 55 49 4c 44 5f 4d 41 |ifdef __|BUILD_MA| |00001160| 43 5f 5f 0d 0a 0d 0a 23 | 70 72 61 67 6d 61 20 6d |C__....#|pragma m| |00001170| 61 72 6b 20 2d 0d 0a 23 | 70 72 61 67 6d 61 20 6d |ark -..#|pragma m| |00001180| 61 72 6b 20 3d 3d 3d 20 | 4d 61 63 20 73 70 65 63 |ark === |Mac spec| |00001190| 69 66 69 63 20 3d 3d 3d | 0d 0a 23 70 72 61 67 6d |ific ===|..#pragm| |000011a0| 61 20 6d 61 72 6b 20 2d | 0d 0a 0d 0a 23 65 6e 64 |a mark -|....#end| |000011b0| 69 66 09 2f 2f 20 5f 5f | 42 55 49 4c 44 5f 4d 41 |if.// __|BUILD_MA| |000011c0| 43 5f 5f 0d 0a 0d 0a 23 | 69 66 64 65 66 20 5f 5f |C__....#|ifdef __| |000011d0| 42 55 49 4c 44 5f 57 49 | 4e 5f 5f 0d 0a 0d 0a 23 |BUILD_WI|N__....#| |000011e0| 70 72 61 67 6d 61 20 6d | 61 72 6b 20 2d 0d 0a 23 |pragma m|ark -..#| |000011f0| 70 72 61 67 6d 61 20 6d | 61 72 6b 20 3d 3d 3d 20 |pragma m|ark === | |00001200| 57 69 6e 20 73 70 65 63 | 69 66 69 63 20 3d 3d 3d |Win spec|ific ===| |00001210| 0d 0a 23 70 72 61 67 6d | 61 20 6d 61 72 6b 20 2d |..#pragm|a mark -| |00001220| 0d 0a 0d 0a 23 65 6e 64 | 69 66 09 2f 2f 20 5f 5f |....#end|if.// __| |00001230| 42 55 49 4c 44 5f 57 49 | 4e 5f 5f 0d 0a 00 00 00 |BUILD_WI|N__.....| |00001240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001260| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001270| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001280| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........| |00001290| 54 68 69 73 20 72 65 73 | 6f 75 72 63 65 20 66 6f |This res|ource fo| |000012a0| 72 6b 20 69 6e 74 65 6e | 74 69 6f 6e 61 6c 6c 79 |rk inten|tionally| |000012b0| 20 6c 65 66 74 20 62 6c | 61 6e 6b 20 20 20 00 00 | left bl|ank ..| |000012c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000012d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000012e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000012f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001300| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001320| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |00001380| 00 00 01 00 00 00 01 00 | 00 00 00 00 00 00 00 1e |........|........| |00001390| 00 00 00 00 00 00 00 00 | 00 1c 00 1e ff ff 00 00 |........|........| |000013a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000013b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000013c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000013d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000013e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| |000013f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........| +--------+-------------------------+-------------------------+--------+--------+